Many electronic devices, such as sensors, operate on battery power or are turned on substantially 24 hours per day. Examples of sensors include image sensors such as cameras, environmental sensors such as temperature or humidity sensors, and accelerometers or strain gauges used, e.g., to measure loads and response of bridges. Sensors and other devices may be interconnected, e.g., using wired or wireless network connections carrying network traffic. Sensor data or other data to be transmitted may be encapsulated, e.g., in the Internet Protocol (IP). A set of deployed sensors or other devices so interconnected is sometimes referred to as part of the “Internet of Things” (“IoT”). Sensors or other electronic devices may also or alternatively store data, e.g., sensor data, in onboard computer-readable memory such as a Flash memory. The stored data may then be retrieved via a network connection or a bus connection such as a Universal Serial Bus (USB) connection by a desktop computer.
Many sensors provide “sparse” sensor data. Sparse sensor data is sensor data in which the number of information-carrying bits is low compared to the total number of bits the sensor could provide. In an example, a low-resolution seismograph may produce sparse data since the needle only moves when earthquakes happen, and is substantially still the rest of the time. In another example, an indoor temperature sensor that transmits data only when the temperature changes may produce sparse data since indoor ventilation systems work to keep the temperature substantially constant.
Compressive Sensing (CS) is sometimes used to compress sparse data, such as sparse sensor data. Compressive Sensing involves transforming P samples of sparse data into M coefficients, M<<P, using a projection matrix Φ. The samples of sparse data and the coefficients may be represented as vectors. The M coefficients may then be stored or transmitted to a receiver. To recover the P samples, an inverse computation is carried out using the projection matrix Φ and the M coefficients. Since M<<P, there are a potentially-infinite number of possible solutions to the inverse computation. However, for sparse data, the sparsest of the possible solutions has a high probability of being the P-sample sparse data vector. The usable number of coefficients M is limited by how sparse the data are. Sparsity is often measured using a sparsity value K, which is the number of nonzero coefficients in a P-sample data vector. In an example, M≥K log(P/K).